package com.resrun.vo.request;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import lombok.Data;
import org.hibernate.validator.constraints.Range;

/**
 * 证书记录信息
 *
 * @author hupan
 * @since 2024-01-23
 */
@Data
public class ReGenerateCertRequest {

    /**
     * 申请记录ID
     */
    @NotNull(message = "申请记录ID不能为空")
    @Range(min = 1, message = "申请记录ID不正确")
    private Long requestId;

    /**
     * 证书序列号
     */
    @NotNull(message = "证书序列号不能为空")
    @Pattern(regexp = "^[a-zA-Z0-9]{32}$", message = "证书序列号不正确")
    private String serial;

    /**
     * 用户ID
     */
    @NotNull(message = "用户ID不能为空")
    @Range(min = 1, message = "用户ID不正确")
    private Long userId;

    /**
     * 证书别名
     */
    @NotBlank(message = "证书别名不能为空")
    private String alias;

    /**
     * 证书密码
     */
    @NotBlank(message = "证书密码不能为空")
    private String passowrd;

    /**
     * 证书期限（单位年）
     */
    private Byte lifespan;

}
